package com.ruoyi.order.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 订单支付信息对象 order_payment
 *
 * @author HHAOYU
 * @date 2020-12-14
 */
@TableName("order_payment")
public class OrderPayment extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    
    private Long id;
    private Long orderId;
    /** ⽀付⽅式编码 */
    @Excel(name = "⽀付⽅式编码")
    private String payMethodCode;
    /** ⽀付⽅式名称 */
    @Excel(name = "⽀付⽅式名称")
    private String payMethodName;
    /** ⽀付⾦额 */
    @Excel(name = "⽀付⾦额")
    private Long payAmount;
    /** 支付唯一编号  会员卡支付的时候paycode放卡号 券支付就放券码 */
    @Excel(name = "支付唯一编号")
    private String payCode;
    /** ⽀付⼯具配置ID，云 智第三⽅⽀付时必传 */
    @Excel(name = "⽀付⼯具配置ID，云 智第三⽅⽀付时必传")
    private String payConfigId;
    /** ⽀付⼯具指定商品类 型，如兑换券适⽤商 品类型： TICKET（影票）， GOODS（卖品） */
    @Excel(name = "⽀付⼯具指定商品类 型，如兑换券适⽤商 品类型： TICKET", readConverterExp = "影=票")
    private String payApply;
    /** ⽀付token，如会员 卡⽀付token */
    @Excel(name = "⽀付token，如会员 卡⽀付token")
    private String payToken;

    private String refundCode;
    private Date refundTime;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setOrderId(Long orderId)
    {
        this.orderId = orderId;
    }

    public Long getOrderId()
    {
        return orderId;
    }
    public void setPayMethodCode(String payMethodCode)
    {
        this.payMethodCode = payMethodCode;
    }

    public String getPayMethodCode()
    {
        return payMethodCode;
    }
    public void setPayMethodName(String payMethodName)
    {
        this.payMethodName = payMethodName;
    }

    public String getPayMethodName()
    {
        return payMethodName;
    }

    public Long getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(Long payAmount) {
        this.payAmount = payAmount;
    }

    public void setPayCode(String payCode)
    {
        this.payCode = payCode;
    }

    public String getPayCode()
    {
        return payCode;
    }
    public void setPayConfigId(String payConfigId)
    {
        this.payConfigId = payConfigId;
    }

    public String getPayConfigId()
    {
        return payConfigId;
    }
    public void setPayApply(String payApply)
    {
        this.payApply = payApply;
    }

    public String getPayApply()
    {
        return payApply;
    }
    public void setPayToken(String payToken)
    {
        this.payToken = payToken;
    }

    public String getPayToken()
    {
        return payToken;
    }

    public String getRefundCode() {
        return refundCode;
    }

    public void setRefundCode(String refundCode) {
        this.refundCode = refundCode;
    }

    public Date getRefundTime() {
        return refundTime;
    }

    public void setRefundTime(Date refundTime) {
        this.refundTime = refundTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orderId", getOrderId())
            .append("payMethodCode", getPayMethodCode())
            .append("payMethodName", getPayMethodName())
            .append("payAmount", getPayAmount())
            .append("payCode", getPayCode())
            .append("payConfigId", getPayConfigId())
            .append("payApply", getPayApply())
            .append("payToken", getPayToken())
            .toString();
    }
}
